﻿using System.Collections.Generic;
using MaxStoreShop.Domain.Directories;

namespace MaxStoreShop.Logic.ServicesContracts.Directories
{
    /// <summary>
    /// Интерфейс для работы с местами хранения
    /// </summary>
    public interface IStorageLocationService
    {
        /// <summary>
        /// Получает список всех мест хранения
        /// </summary>
        /// <returns>Возвращает список мест хранения</returns>
        IEnumerable<StorageLocation> GetAllStorageLocations();

        /// <summary>
        /// Производит удаление места хранения
        /// </summary>
        /// <param name="storageLocation">Место хранения, которое необходимо удалить</param>
        void DeleteStorageLocation(StorageLocation storageLocation);

        /// <summary>
        /// Сохраняет новое или измененное место хранения
        /// </summary>
        /// <param name="storageLocation">Место хранения для сохранения</param>
        void SaveStorageLocation(StorageLocation storageLocation);
    }
}
